from dataclasses import dataclass

@dataclass
class CFG_Node:
    id: int
    addr: str
    function_name: str
    function_addr: str
    block_addr: str
    disasm: str

    def to_dict(self):
        return self.__dict__
    
@dataclass
class CDG_Node:
    id: int
    addr: str
    function_name: str
    function_addr: str
    block_addr: str
    disasm: str

    def to_dict(self):
        return self.__dict__
    
@dataclass
class CG_Node:
    id: int
    addr: str
    function_name: str
    function_addr: str
    block_addr: str
    disasm: str

    def to_dict(self):
        return self.__dict__
    
@dataclass
class DDG_Node:
    id: int
    addr: str
    function_name: str
    function_addr: str
    block_addr: str
    disasm: str

    def to_dict(self):
        return self.__dict__
    
@dataclass
class Edge:
    src_id: int
    dst_id: int
    type: str

    def to_dict(self):
        return self.__dict__